package insert;

public class InsertalgorithmDemo {
    public static void main(String[] args) {
        // 旧数组
        int[] oldScores = {55, 60, 78, 90};
        // 新数组
        int[] newScores = new int[oldScores.length + 1];
        // 待插入的值
        int num = 98;

        // 赋值旧数组的元素到新数组中
        for (int i = 0; i < oldScores.length; i++) {
            newScores[i] = oldScores[i];
        }

        // 通过比较找到插入位置
        int index = 0; // 保存找到的位置
        boolean folag=false;
        for (int i = 0; i < newScores.length; i++) {
            if (num <= newScores[i]) {
                // 找到新元素的位置
                index = i;
                folag=true;
                break;
            }
            if(folag==false)
                index=newScores.length-1;
        }

        // 该位置index后的元素依次后移一个位置
        for (int j = newScores.length - 1; j > index; j--) {
            newScores[j] = newScores[j - 1];
        }

        // 把待插入的值，赋值到index的位置
        newScores[index] = num;

        // 打印，看效果
        for (int i = 0; i < newScores.length; i++) {
            System.out.print(newScores[i] + " ");
        }
    }
}